Razor Syntax এবং Helper Methods

Microsoft Technologies - ডট নেট কোর (Dot.Net Core) ভিউ এবং Razor Pages (Views and Razor Pages) |
239
239

Razor হল একটি সিম্পল এবং শক্তিশালী টেমপ্লেট ইঞ্জিন, যা ASP.Net Core-এ ভিউ (View) তৈরি করতে ব্যবহৃত হয়। Razor সিএসএস, HTML, JavaScript এবং C# কোডকে একটি একক ফাইলে একত্রিত করে, যার মাধ্যমে ডায়নামিক ওয়েব পেজ তৈরি করা যায়। Razor-এ সি# কোড এবং HTML-এর মধ্যে সিম্পল এবং কার্যকরীভাবে মিশ্রণ করা যায়।


Razor Syntax

Razor সিনট্যাক্স অত্যন্ত সরল এবং এটি HTML ট্যাগের ভিতরে C# কোড ব্যবহার করতে দেয়। Razor কোড সাধারণত @ চিহ্ন দিয়ে শুরু হয়, যা C# কোড ব্লককে HTML থেকে আলাদা করে। Razor কোড লেখার জন্য কয়েকটি সাধারণ সিনট্যাক্স রয়েছে, যেমন:

একক কোড ব্লক

Razor কোড একক লাইনে C# কোড লেখা যেতে পারে, যেমন:

<h1>@DateTime.Now</h1>

এটি বর্তমান তারিখ এবং সময় পৃষ্ঠায় প্রদর্শন করবে।

ভেরিয়েবল ডিক্লেয়ারেশন

Razor-এ C# ভেরিয়েবল ব্যবহার করা খুবই সহজ:

@{
    var message = "Hello, Razor!";
}
<p>@message</p>

এখানে, আমরা message নামক একটি ভেরিয়েবল ডিফাইন করেছি এবং সেটি HTML ট্যাগে ব্যবহার করেছি।

কন্ট্রোল স্টেটমেন্টস

Razor-এ C# কন্ট্রোল স্টেটমেন্ট (যেমন if, foreach, for) ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ, একটি if কন্ডিশন:

@if (DateTime.Now.DayOfWeek == DayOfWeek.Sunday)
{
    <p>আজ রবিবার!</p>
}
else
{
    <p>আজ রবিবার নয়।</p>
}

এখানে, Razor C# কোডের মাধ্যমে ডেটা চেক করছে এবং HTML ট্যাগের মাধ্যমে রেন্ডার করছে।

লুপ (Loop)

C# লুপ (যেমন for, foreach) Razor টেমপ্লেটে সহজে ব্যবহার করা যায়। উদাহরণ:

<ul>
    @foreach (var item in new List<string> { "Apple", "Banana", "Cherry" })
    {
        <li>@item</li>
    }
</ul>

এখানে, আমরা একটি লিস্টের প্রতিটি আইটেম <li> ট্যাগে রেন্ডার করছি।


Razor Helper Methods

Razor টেমপ্লেট ব্যবহার করে অনেক কাজকে আরও সহজ ও ডায়নামিক করা সম্ভব। Razor হেল্পার মেথডগুলি মূলত ছোট ফাংশন যা নির্দিষ্ট কাজ করে। এগুলি সাধারণত HTML ট্যাগ তৈরি করতে বা C# কোড প্রয়োগ করতে ব্যবহার করা হয়। কিছু পরিচিত Razor হেল্পার মেথডের উদাহরণ নিচে দেওয়া হলো:

@Html.ActionLink()

এটি একটি লিঙ্ক তৈরি করে যা নির্দিষ্ট কন্ট্রোলারের অ্যাকশনে রিডাইরেক্ট করে। উদাহরণ:

@Html.ActionLink("Go to Home", "Index", "Home")

এটি "Go to Home" নামে একটি লিঙ্ক তৈরি করবে, যা HomeController এর Index অ্যাকশনে রিডাইরেক্ট করবে।

@Html.BeginForm()

এটি একটি HTML ফর্ম তৈরি করতে ব্যবহৃত হয়, যা পোস্ট রিকোয়েস্ট পাঠানোর জন্য ব্যবহৃত হয়:

@using (Html.BeginForm())
{
    <input type="text" name="name" />
    <button type="submit">Submit</button>
}

এই কোড একটি ফর্ম তৈরি করবে, যা সাবমিট করার পর, ডিফল্টভাবে সেই রিকোয়েস্টটিকে ঐ অ্যাকশনে পাঠাবে।

@Html.TextBoxFor()

এই হেল্পার মেথড ব্যবহার করে আপনি মডেল প্রপার্টি থেকে ডেটা নিয়ে একটি ইনপুট ফিল্ড তৈরি করতে পারেন। উদাহরণ:

@Html.TextBoxFor(model => model.Name)

এটি মডেল Name প্রপার্টির জন্য একটি ইনপুট ফিল্ড তৈরি করবে।

@Html.ValidationMessageFor()

এটি মডেল প্রপার্টির জন্য ভ্যালিডেশন মেসেজ প্রদর্শন করতে ব্যবহৃত হয়:

@Html.ValidationMessageFor(model => model.Name)

এটি Name প্রপার্টির জন্য কোনো ভ্যালিডেশন মেসেজ থাকলে সেটি দেখাবে।

@Url.Action()

এটি একটি URL তৈরি করতে ব্যবহৃত হয় যা নির্দিষ্ট কন্ট্রোলারের অ্যাকশনের জন্য রিডাইরেক্ট করবে:

<a href="@Url.Action("Details", "Product", new { id = 1 })">Product Details</a>

এটি ProductController এর Details অ্যাকশনের জন্য একটি URL তৈরি করবে এবং এতে id প্যারামিটারও পাস করবে।


Razor Helper Methods এর সুবিধা

  • কোড পুনরায় ব্যবহারযোগ্যতা: Razor হেল্পার মেথডগুলি সাধারণ কাজের জন্য কোড পুনরায় ব্যবহারযোগ্যতা নিশ্চিত করে। একে বার লিখলে, আপনি সেটা বিভিন্ন জায়গায় ব্যবহার করতে পারবেন।
  • রিডেবিলিটি: Razor সিনট্যাক্স সহজ এবং পরিষ্কার, যা কোডের রিডেবিলিটি বাড়ায়।
  • ডাইনামিক কন্টেন্ট: Razor HTML এবং C# কোড একত্রিত করে ডাইনামিক কন্টেন্ট তৈরি করতে সহায়তা করে।
  • ভ্যালিডেশন এবং ফর্ম হ্যান্ডলিং: Razor হেল্পার মেথডগুলি মডেল ভ্যালিডেশন এবং ফর্ম সাবমিশন প্রক্রিয়াকে সহজ এবং নির্ভুল করে।

সারাংশ
Razor Syntax এবং Helper Methods ASP.Net Core অ্যাপ্লিকেশনে ডায়নামিক ওয়েব পেজ তৈরি করার জন্য অত্যন্ত গুরুত্বপূর্ণ। Razor সিনট্যাক্স HTML এবং C# কোডের মধ্যে একটি সিম্পল এবং কার্যকরী সংমিশ্রণ তৈরি করে, যা ডায়নামিক কন্টেন্ট প্রক্রিয়া করতে সাহায্য করে। Razor হেল্পার মেথডগুলি কোড পুনরায় ব্যবহারযোগ্যতা, ফর্ম হ্যান্ডলিং, ভ্যালিডেশন এবং ডাইনামিক কন্টেন্ট প্রদর্শন করতে সহায়তা করে, যা ওয়েব ডেভেলপমেন্ট প্রক্রিয়াকে সহজ এবং দ্রুত করে।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion